﻿using Shop.RemoteModel.Goods.Model;
using Shop.RemoteModel.SpuGoods.Model;
using WeDonekRpc.Client;
using WeDonekRpc.HttpApiGateway.Model;

namespace Shop.StoreGatewayModular.Interface
{
    public interface IGoodsService
    {
        SpuDatum[] GetTops ( TopGetArg arg );
        GoodsDto[] Gets ( long[] ids );
        GoodsStock[] GetStocks ( long goodsId );
        GoodsDetailed GetDetailed ( long id );
        long Add ( GoodsSet datum );
        void Delete ( long id );
        GoodsDatum Get ( long id );
        void Offshelf ( long id );
        void Public ( long id, long userId, Dictionary<long, int> stock );
        PagingResult<GoodsDto> Query ( PagingParam<GoodsQueryParam> query );
        bool Set ( long id, GoodsSet datum );
    }
}